#ifndef BTFORM_H
#define BTFORM_H

#include <QWidget>
#include <QPropertyAnimation>

namespace Ui {
class BtForm;
}

class BtForm : public QWidget
{
    Q_OBJECT

public:
    explicit BtForm(QWidget *parent = nullptr);
    ~BtForm();

    // 设置btIcon控件的图案，btText控件的文本以及关联page索引
    void setIconAndText(const QString& btIcon, const QString& btText, int pageId);

    // 设置背景颜色
    void setBg();

    // 清除背景颜色
    void clearBg();

    void showAnimation();

    void hideAnimation();

    int PageId();
signals:
    void btClick(int id);
protected:
    void mousePressEvent(QMouseEvent *event) override;

private:
    Ui::BtForm *ui;
    int pageId;     // 与QtMusic的stackedWidget中关联界面的索引
    // lineBox动画起伏效果
    QPropertyAnimation* line1Animation;
    QPropertyAnimation* line2Animation;
    QPropertyAnimation* line3Animation;
    QPropertyAnimation* line4Animation;
};

#endif // BTFORM_H
